技術問答
技術文章
iT 徵才
Tag
聊天室
2024 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2017 iT 邦幫忙鐵人賽
DAY
17
1
自我挑戰組
你看微客=[ 前端領域 - 超入門 ]
系列 第
17
篇
Ajax---[ Ajax、JSON、JSONP ]---無用小觀念
2017鐵人賽
ucvic
2016-12-29 19:57:51
2067 瀏覽
分享至
Ajax、JSON、JSONP
Ajax ( Asynchronous Javascript and XML ) 指的是
網頁伺服器回應網頁請求,在不重新載入頁面的情況下更新的技術
,如 FB 的按讚、登入而不離開網頁、投票與評分等都是 Ajax 技術的應用。
Ajax 實際是借由瀏覽器、Javascript、網頁伺服器,此三種元件搭配運作來實現:
瀏覽器:接收使用者操作來觸發事件,並利用
內建的 XMLHttpRequest 物件
連結 Javascript 語言。
Javascript:利用 XMLHttpRequest 物件提供的方法及屬性來送出請求給網頁伺服器,然後等待、處理回應,並
以載入部分頁面的方式來更新網頁
。
網頁伺服器:接收請求並回應資訊給瀏覽器,一般是
回傳 JSON 或 XML 格式的資料
。
XMLHttpRequest 物件提供 GET 及 POST 兩種不同的方法來傳送資料給瀏覽器,
採用何種方式需視伺服器端如何設計而定
。
GET 方法會將要傳送的索引資料接在 URL 之後,於 URL 欄可見,安全性較差,
適合不會影響伺服器端資料庫或檔案的請求
。
POST 方法會將傳送的資料與 URL 分開,於 URL 欄可見,安全性較高,
當發出請求所傳送的資料會影響伺服器端資訊時較適用
。
JSON ( Javascript Object Notation ) 的格式與 Javascript 物件非常相似,瀏覽器可以快速的將其轉換為 Javascript 可處理的物件,而 XML 在處理之前須先解析其 DOM ,才能讓 Javascript 進行處理,耗費較多時間與資源,故目前 JSON 是 Ajax 交換資料較常見的格式。
JSON 格式與 Javascript 物件的主要差異在於,
JSON 物件的屬性名稱需使用雙引號包圍,且資料皆為字串形式,其內容同樣要用雙引號包圍
。
範例:
{ "name" : "vic", "sex" : "male", "age" : "34" }
Ajax 請求因為安全性的考量,被瀏覽器限制在同一來源。
JSONP ( JSON with padding ) 提供從其他網站讀取資料的方式,其方法就像是連結第三方網站的外部 Javascript 檔案。
目標第三方網站必須設定能回應 JSONP
,才能使用 JSONP 對其請求資料。
留言
追蹤
檢舉
上一篇
jQuery---[ 外掛 ( plug-in )、jQuery UI ]---無用小觀念
下一篇
RWD---[ 響應式網站 ( 一 ) ]---無用小觀念
系列文
你看微客=[ 前端領域 - 超入門 ]
共
30
篇
目錄
RSS系列文
訂閱系列文
17
人訂閱
26
React---[ 自訂元件、props特性 ]---無用小觀念
27
React---[ state 狀態、事件處理 ]---無用小觀念
28
React---[ JSX ]---無用小觀念
29
Git---[ Git 基本觀念 ]
30
30天鐵人賽---[ 參賽心得 ]
完整目錄
直播研討會
{{ item.subject }}
{{ item.channelVendor }}
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
1064
組
團體組數
40
組
累計文章數
22195
篇
完賽人數
600
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
vue.js
熱門問題
請問內網IP如何轉外網IP?
新手學習編程,哪種編程語言好?
如何寫公式才能利用excel 觸發一個數據時傳送一個訊息給 自已的line呢?有沒有可以用其它方式,來取代line notify 的方法,因為line 開始收費
Windows7升級Windows10後網路功能異常
python爬蟲 動態生成網頁104人力銀行
區域網路問題提問
vmware 虛擬機(windows)裡顯示使用容量與實際檔案容量不符合
防火牆與DNS請教
2台 Hyper-V 2008 R2 叢集主機(硬體規格相同), 如何加入一台新機? 謝謝.
FORTI 防火牆使用 RADIUS 認證問題請教
熱門回答
請問內網IP如何轉外網IP?
防火牆與DNS請教
這樣的物件設計好嗎?
新手學習編程,哪種編程語言好?
SDX-500電話主機 Fortinet FG-100F port開啟問題
熱門文章
每日一篇學習筆記 直到我做完專題 :( [Day33]
每日一篇學習筆記 直到我做完專題 :( [Day34]
每日一篇學習筆記 直到我做完專題 :( [Day35]
隨時切換 WINDOWS 右鍵新舊版選單
每日一篇學習筆記 直到我做完專題 :( [Day36]
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}